package com.nineclock.system;

import com.nineclock.common.entity.Result;
import com.nineclock.system.dto.SysCompanyUserDTO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.PathVariable;

import java.util.List;

@Api(value = "员工管理接口", tags = "系统服务")
public interface SysCompanyUserControllerApi {

    @ApiOperation(value = "根据手机号获取用户")
    public Result<SysCompanyUserDTO> findCompanyUserByMobile(String mobile);


    @ApiOperation(value = "员工管理: 根据企业/用户ID查询员工列表")
    public Result<List<SysCompanyUserDTO>> queryCompanyUser(Long companyId, Long userId);

    @ApiOperation(value = "员工管理: 根据企业/企业表ID查询员工")
    public Result<SysCompanyUserDTO> queryCompanyUserByCompanyIdAndCompanyUserId(
            @RequestParam("companyId") Long companyId,
            @RequestParam("companyUserId") Long companyUserId);

    @ApiOperation(value = "员工管理: 查询当前企业所有员工")
    public Result<List<SysCompanyUserDTO>> queryAllCompanyUser();

    @ApiOperation(value = "员工管理: 根据用户ID查询员工列表")
    public Result<SysCompanyUserDTO> queryByCompanyUserId(@PathVariable("companyUserId") Long companyUserId);

}